home *** CD-ROM | disk | FTP | other *** search
- /*==================================*/
- /* TEST bootblock.library by NasGûl */
- /* L = list all known virus. */
- /* F = force install boot */
- /*==================================*/
-
- MODULE 'bbbf','libraries/bbbf'
-
- PROC main()
- DEF drive,buffer[1024]:STRING,ret,r
- DEF mybb:PTR TO bootblock,brainfile
- DEF pv[256]:STRING,numv,verstr[256]:STRING
- drive:=0
- IF bootblockbase:=OpenLibrary('Bootblock.library',3)
- brainfile:=ReadBBBF('L:BootBlock.brainfile')
- IF (brainfile=BBBF_LOADED) OR (brainfile=BBBF_ALREADY_LOADED)
- WriteF('brainfile \s loaded..\n',IF brainfile=BBBF_ALREADY_LOADED THEN 'already' ELSE '')
- GetBBBFInfo(numv,verstr)
- WriteF('\d virus \s\n',Int(numv),verstr)
- IF StrCmp(arg,'L',1)
- p_List(Int(numv))
- ELSE
- ret:=ReadBoot(drive,buffer)
- IF ret=0
- mybb:=CheckBoot(buffer,0)
- IF mybb=BOOT_VIRUS
- WriteF('Disk infected by :\s\n',mybb.name)
- InstallBoot(drive,3)
- ELSEIF mybb=BOOT_UNKNOWN
- IF StrCmp(arg,'F',1)
- WriteF('Intall Boot..\n')
- InstallBoot(drive,3)
- ELSE
- WriteF('BootDisk Unknown..\n')
- ENDIF
- ELSEIF mybb=BOOT_NOT_BOOT
- WriteF('Disk NoBoot..\n')
- ENDIF
- ELSE
- WriteF('Problème..\n')
- ENDIF
- ENDIF
- FreeBBBF()
- ELSE
- IF brainfile=BBBF_NOT_BBBF THEN WriteF('Bad L:bootblock.brainfile..\n')
- IF brainfile=BBBF_CHECKSUM_ERROR THEN WriteF('Check sum error.\n')
- IF brainfile=BBBF_OUT_OF_MEMORY THEN WriteF('Out of mem.\n')
- ENDIF
- IF bootblockbase THEN CloseLibrary(bootblockbase)
- ELSE
- WriteF('bootblock.library v3.1 ??\n')
- ENDIF
- ENDPROC
- PROC p_List(v)
- DEF mb:PTR TO bootblock,s=0
- mb:=ListBBBF()
- WHILE mb
- WriteF('«\s»',mb.name)
- mb:=mb.next
- s:=s+1
- IF s=v THEN JUMP f
- ENDWHILE
- f:
- WriteF('\n')
- ENDPROC
-
-